﻿
using System;
using System.Diagnostics.CodeAnalysis;
namespace Plugins.Interfaces
{
    public interface IPluginWorkItem
    {
        [SuppressMessage("Microsoft.Naming", "CA1716")]
        event EventHandler<EventArgs> Start;
        [SuppressMessage("Microsoft.Naming", "CA1716")]
        event EventHandler<EventArgs> Stop;

        void Run();
        
        bool IsRunAsync { get; }
        void RunAsync();
        void CancelAsync();
    }
}
